<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
    </ul>
</body>
<script>
    // 3、遍历对象常用的方法  es6
    // for  in
    // let obj = {
    //     name:'张三',
    //     age:18,
    //     address:'郑州'
    // }
    // console.log(obj['name']);
    // // key是遍历的对象的属性名
    // for(let key in obj){
    //     // console.log(key)
    //    console.log(obj[key]);
    // }
    // Object.keys()

    let obj = {
        name:'张三',
        age:18,
        address:'郑州'
    }
    // console.log(Object.keys(obj));

    // Object.keys(对象) 的返回值是一个数组 把对象所有属性名都放到数组里面
//    Object.keys(obj).forEach((key)=>{
//     // console.log(key);
//     console.log(obj[key]);

//    })


// Object.values(对象)
// console.log(Object.values(obj));

// Object.values(obj).forEach(item=>{
//     console.log(item);
// })
// Object.getOwnPropertyNames(对象)

console.log(Object.getOwnPropertyNames(obj));

Object.getOwnPropertyNames(obj).forEach(item=>{
    console.log(item);
})


// Object.entries()
// Object.entries()方法返回一个数组，成员是参数对象自身的（不含继承的）所有可遍历（enumerable）属性的键值对数组。
console.log(Object.entries(obj));



// es6数组常用的方法
// some   forEach   map  filter  reduce


// 数组新增的方法   Array.from() 2Array.of()  fill()   find()  findIndex()

// Array.from()  方法 可将类数组或者伪数组转换为数组   
// let a = new Set([1,2,3])
// console.log(Array.from(a));

// let lis = document.querySelectorAll('li')
// console.log(lis);
// console.log(Array.from(lis));
// Array.of方法  可以将一组数转为数组 
// console.log(Array.of(1,2,3,4,5));

// fill() 方法 只有一个参数是 填充数组
// 第二个参数和第三个参数  第一个参数是填充的数据   第二个参数是填充的开始位置  第三个参数是填充的结束位置


let arr = new Array(2).fill(1)
console.log(arr);
let arr1 = ['a','b','c','d']
arr1.fill(8,2,3)
console.log(arr1);

// find()  循环遍历数组 找到了返回值满足条件的项   找不到返回值是undefined
// findIndex() 循环遍历数组 找到了返回满足条件的第一个下标  找不到返回-1













</script>
</html>